2025年10月8日 - 警告:未使用の共通テーブル式を含むクエリ実行時にエラーなく間違った結果を返す
[概要]
・警告ID: DP-443396
・影響を受ける製品とバージョン:
InterSystems IRIS data platform
InterSystems IRIS for Health
HealthShare Health Connect
2024.1.0-2024.1.4, 2024.2.0, 2024.3.0, 2025.1.0-2025.1.1
HealthShare Unified Care Record
2024.2, 2025.1
・リスクカテゴリー & スコア:
誤作動 低リスク
・発生条件
ダイナミック・クエリで共通テーブル式を使用したとき
[発生する問題]
InterSystems IRIS バージョン 2024.1.0-2024.1.4, 2024.2.0, 2024.3.0,
2025.1.0-2025.1.1 において、ダイナミック・クエリで発行される特定の SQL
クエリに共通テーブル式(CTE)が含まれるとき、エラーなく間違った結果を返す
可能性があります。本障害は、クエリ文にクエリパラメータを含むCTEが使われ
ている、かつ、それらCTEがクエリで使われていないときにのみ発生します。
例えば、下記クエリ
WITH
aaa AS (SELECT * FROM t1 WHERE f = 'abc'),
bbb AS (SELECT * FROM t2 WHERE f = 'efg') SELECT * FROM bbb
では、CTE 'aaa' がクエリパラメータ 'abc' を含んでいる、かつ、クエリで
使われていないため、本障害の発生条件に該当します。
埋め込みSQLやJDBC/ODBCといったxDBC接続で上記のようなクエリを実行しても
本障害は発生しません。
[影響]
この問題の影響は次のとおりです:
・InterSystems IRIS SQL でエラーなく間違った結果が返ることがある。
[解決策]
この問題の修正はバージョン 2024.1.5、2025.1.2 および 2025.2.0 および
以降のバージョンに含まれる予定です。
対象バージョンでは、ダイナミック・クエリから、使われていないCTE定義を
削除することで本障害を回避することができます。
お客様のご要望により、本修正 DP-443588 を現在お使いの製品に対する Adhoc
として個別に作成し、提供することが可能です。お使いのシステムに対する
Adhoc が必要な場合は、カスタマーサポートセンターまでお知らせ下さい。
この警告についてご質問がある場合は、カスタマーサポートセンターにご連絡下さい。